

<!DOCTYPE html>
<html lang="en">

<head>

  <meta charset="utf-8" />
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <meta name="generator" content="HelpNDoc Personal Edition 7.3.0.348">
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <link rel="icon" href="favicon.ico"/>

  <title>What's New? 2.2.3 (changelog)</title>
  <meta name="description" content="" /> 
  <meta name="keywords" content="">



  

  <!-- Twitter Card data -->
  <meta name="twitter:card" content="summary">
  <meta name="twitter:title" content="What's New? 2.2.3 (changelog)">
  <meta name="twitter:description" content="">

  <!-- Open Graph data -->
  <meta property="og:title" content="What's New? 2.2.3 (changelog)" />
  <meta property="og:type" content="article" />
  <meta property="og:description" content="" />
  <meta property="og:site_name" content="FCEUX Help" /> 

  <!-- Bootstrap core CSS -->
  <link href="vendors/bootstrap-3.4.1/css/bootstrap.min.css" rel="stylesheet"/>

  <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
  <link href="vendors/bootstrap-3.4.1/css/ie10-viewport-bug-workaround.css" rel="stylesheet"/>

  <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
  <!--[if lt IE 9]>
      <script src="vendors/html5shiv-3.7.3/html5shiv.min.js"></script>
      <script src="vendors/respond-1.4.2/respond.min.js"></script>
    <![endif]-->

  <!-- JsTree styles -->
  <link href="vendors/jstree-3.3.10/themes/default/style.min.css" rel="stylesheet"/>

  <!-- Hnd styles -->
  <link href="css/layout.min.css" rel="stylesheet" />
  <link href="css/effects.min.css" rel="stylesheet" />
  <link href="css/theme-light-blue.min.css" rel="stylesheet" />
  <link href="css/print.min.css" rel="stylesheet" media="print" />
  <style type="text/css">nav { width: 250px} @media screen and (min-width:769px) { body.md-nav-expanded div#main { margin-left: 250px} body.md-nav-expanded header { padding-left: 264px} }</style>

  <!-- Content style -->
  <link href="css/hnd.content.css" rel="stylesheet" />

  



</head>

<body class="md-nav-expanded">



  <div id="skip-link">
    <a href="#main-content" class="element-invisible">Skip to main content</a>
  </div>

  <header class="headroom">
    <button class="hnd-toggle btn btn-default">
      <span class="sr-only">Toggle navigation</span>
      <span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>        
    </button>
    <h1>FCEUX Help</h1>
    
  </header>

  <nav id="panel-left" class="md-nav-expanded">
    <!-- Nav tabs -->
    <ul class="tab-tabs nav nav-tabs" role="tablist">
      <li id="nav-close"> 
        <button class="hnd-toggle btn btn-default">
          <span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
        </button>
      </li>
      
	  
        <li role="presentation" class="tab active">
            <a href="#contents" id="tab-contents" aria-controls="contents" role="tab" data-toggle="tab">
                <i class="glyphicon glyphicon-list"></i>
                Contents
            </a>
        </li>
      
        <li role="presentation" class="tab">
            <a href="#index" id="tab-index" aria-controls="index" role="tab" data-toggle="tab">
                <i class="glyphicon glyphicon-asterisk"></i>
                Index
            </a>
        </li>
      
        <li role="presentation" class="tab">
            <a href="#search" id="tab-search" aria-controls="search" role="tab" data-toggle="tab">
                <i class="glyphicon glyphicon-search"></i>
                Search
            </a>
        </li>
      
    </ul>  <!-- /Nav tabs -->

    <!-- Tab panes -->
    <div class="tab-content">
	  
      <div role="tabpanel" class="tab-pane active" id="contents">
        <div id="toc" class="tree-container unselectable"
            data-url="_toc.json"
            data-openlvl="1"
        >
            
        </div>
      </div>  <!-- /contents-->
      
      <div role="tabpanel" class="tab-pane" id="index">
        <div id="keywords" class="tree-container unselectable"
            data-url="_keywords.json"
            data-openlvl="1"
        >
            
        </div>
      </div>  <!-- /index-->
      
      <div role="tabpanel" class="tab-pane" id="search">
        <div class="search-content">
          <div class="search-input">
            <form id="search-form">
              <div class="form-group">
                <div class="input-group">
                  <input type="text" class="form-control" id="input-search" name="input-search" placeholder="Search..." />
                  <span class="input-group-btn">
                    <button class="btn btn-default" type="submit">
                      <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
                    </button>
                  </span>
                </div>
              </div>
            </form>
          </div>  <!-- /search-input -->
          <div class="search-result">
            <div id="search-info"></div>
            <div class="tree-container unselectable" id="search-tree"></div>
          </div>  <!-- /search-result -->
        </div>  <!-- /search-content -->
      </div>  <!-- /search-->
      
    </div>  <!-- /Tab panes -->

  </nav>

  <div id="main">

    <article>
        <div id="topic-content" class="container-fluid" 
		  data-hnd-id="WhatsNew223"
		  data-hnd-context="47"
		  data-hnd-title="What's New? 2.2.3 (changelog)"
		>
            
                <div class="navigation">
                    <ol class="breadcrumb">
                        <li><a href="Intro.html">Introduction</a></li>
                    </ol>
                    <div class="nav-arrows">
                        <div class="btn-group btn-group" role="group"><a class="btn btn-default" href="Intro.html" title="Introduction" role="button"><span class="glyphicon glyphicon-menu-up" aria-hidden="true"></span></a><a class="btn btn-default" href="WhatsNew230.html" title="What's New? 2.3.0 (changelog)" role="button"><span class="glyphicon glyphicon-menu-left" aria-hidden="true"></span></a><a class="btn btn-default" href="WhatsNew222.html" title="What's New? 2.2.2 (changelog)" role="button"><span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span></a></div>
                    </div>
                </div> 
            

            <a id="main-content"></a>

            <h2>What's New? 2.2.3 (changelog)</h2>

            <div class="main-content">
                
<p class="rvps2"><span class="rvts22">What's New? </span><span class="rvts26">2.2.3</span></p>
<p class="rvps2"><span class="rvts6">Released -- 28 July 2016</span></p>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps2"><span class="rvts6"><br/></span></p>
<p class="rvps2"><span class="rvts6">The 2.2.3 release fixes a number of emulation bugs, features overclocking (for lag reduction) and Dendy mode, and adds support for a bunch of new ROM dumps (mostly unlicensed). Reverse engineering tools and Lua scripting have got some updates, new input devices are supported, new palette files have beed added. The SDL port has been fixed and updated as well.</span></p>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts33">Common</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts6">Customizable overclocking</span></li>
 <li class="rvps2"><span class="rvts6">Dendy mode</span></li>
 <li class="rvps2"><span class="rvts32">Fixed rerecord counting broken outside taseditor</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34">Emulation</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Added mappers: 29, 30,&nbsp;</span></li>
 <li class="rvps2"><span class="rvts32">Fixed mappers: 225, 119, 4, 35, 31, 69, 212, 45,&nbsp;</span></li>
 <li class="rvps2"><span class="rvts32">Fixed mmc5 IRQ handling</span></li>
 <li class="rvps2"><span class="rvts32">Fixed mmc1 reg#3 masking</span></li>
 <li class="rvps2"><span class="rvts32">Fixed vrc7 sound savestates</span></li>
 <li class="rvps2"><span class="rvts32">Added CoolBoy, KS7010, SB200, UNIF 158B, UNIF DRAGONFIGHTER, UNIF BMC-10-24-C-A1, UNIF EH8813A, UNIF HP898F, UNIF F-15, UNIF RT-01, UNIF UNL-KS7017, UNIF BMC-81-01-31-C, UNIF UNL-8-IN-1</span></li>
 <li class="rvps2"><span class="rvts32">NES 2.0 support</span></li>
 <li class="rvps2"><span class="rvts32">Fixed UNIF BMC 12 IN 1, UNIF OneBus</span></li>
</ul>
<p class="rvps2"><span class="rvts32"><br/></span></p>
<p class="rvps2"><span class="rvts34">Movies</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Fixed a bug with FDS flag being always set when converting a FCM</span></li>
</ul>
<p class="rvps2"><span class="rvts32"><br/></span></p>
<p class="rvps2"><span class="rvts34">Video</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Prescale filter for 2x, 3x and 4x resolutions</span></li>
 <li class="rvps2"><span class="rvts32">Made NTSC filter internal resolution closer to 4:3</span></li>
</ul>
<p class="rvps2"><span class="rvts32"><br/></span></p>
<p class="rvps2"><span class="rvts34">Palette</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Support 512 color palettes</span></li>
 <li class="rvps2"><span class="rvts6">Added external palettes: SONY_CXA2025AS_US.pal, RP2C03.pal (and its versions), Unsaturated-V6.pal</span></li>
 <li class="rvps2"><span class="rvts32">Option to swap deemphasis bits</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34">Sound</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts6">Option to swap duty cycles</span></li>
 <li class="rvps2"><span class="rvts32">NSF can be set to Dendy mode</span></li>
</ul>
<p class="rvps2"><span class="rvts32"><br/></span></p>
<p class="rvps2"><span class="rvts34">Input</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Fix Mouse input implementation</span></li>
 <li class="rvps2"><span class="rvts32">Support for SNES mouse</span></li>
 <li class="rvps2"><span class="rvts32">PEC-586 russian keyboard support</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34">Lua</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Removed speed notification per script reload, if it remained 100%</span></li>
 <li class="rvps2"><span class="rvts32">Fixed lua drawings in NSF</span></li>
 <li class="rvps2"><span class="rvts32">Proper halo for lua font</span></li>
 <li class="rvps2"><span class="rvts32">Fixes to sound.get() region consistency and frequency/midikey detection for Noise and DPCM channels</span></li>
</ul>
<p class="rvps2"><span class="rvts32"><br/></span></p>
<p class="rvps2"><span class="rvts32">New Lua functions:</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">emu.getpath()</span></li>
 <li class="rvps2"><span class="rvts32">emu.loadrom()</span></li>
 <li class="rvps2"><span class="rvts32">rom.writebyte()</span></li>
 <li class="rvps2"><span class="rvts32">gethash()</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34">Win32</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Added -dumpinput and -playinput functions</span></li>
 <li class="rvps2"><span class="rvts32">Support for SNES pad</span></li>
 <li class="rvps2"><span class="rvts32">Added onscreen messages when region changes</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts33">Debugger</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Added debuggerPageSize config variable which lets you pick whether 8KB physical PRG pages are used, or 16KB (the original). It defaults to 14 (1&lt;&lt;14 == 16KB).</span></li>
 <li class="rvps2"><span class="rvts32">Set symbolic debugger name entry dialog text limits when creating a new label</span></li>
 <li class="rvps2"><span class="rvts32">Fixed new-PPU debug information (address and pixel)</span></li>
 <li class="rvps2"><span class="rvts32">Step Into hotkey</span></li>
 <li class="rvps2"><span class="rvts32">More granular accounting of scanline and dot</span></li>
</ul>
<p class="rvps2"><span class="rvts33"><br/></span></p>
<p class="rvps2"><span class="rvts33">Trace Logger</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Fixed incorrect display of resolved address for (FF,x)</span></li>
</ul>
<p class="rvps2"><span class="rvts33"><br/></span></p>
<p class="rvps2"><span class="rvts33">Symbolic debugging</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Optionally display register names</span></li>
</ul>
<p class="rvps2"><span class="rvts33"><br/></span></p>
<p class="rvps2"><span class="rvts33">CDLogger</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts6">Fix </span><span class="rvts32">crash when attempting to open file picked as target for Save Stripped ROM operation</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts33">PPU Viewer</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">8x16 sprite display mode</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts33">Hex Editor</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Added option to dump entire 64k memory space</span></li>
 <li class="rvps2"><span class="rvts32">Don't forget to load the symbols, when hex editor is first launched before debugger</span></li>
 <li class="rvps2"><span class="rvts32">Show values for registers $4000-$4017</span></li>
</ul>
<p class="rvps2"><span class="rvts33"><br/></span></p>
<p class="rvps2"><span class="rvts33">Cheats</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">mmc5 Akumajou Dracula crash fix</span></li>
 <li class="rvps2"><span class="rvts32">More RAM available in search</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34">SDL</span></p>
<ul style="text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;">
 <li class="rvps2"><span class="rvts32">Added apply button to video config dialog</span></li>
 <li class="rvps2"><span class="rvts32">Added link to libgd project download page in readme</span></li>
 <li class="rvps2"><span class="rvts32">Noted optional libgd dependency in readme</span></li>
 <li class="rvps2"><span class="rvts32">SCons: Fixed logic for LOGO and CREATE_AVI options</span></li>
 <li class="rvps2"><span class="rvts32">Manpage updates</span></li>
 <li class="rvps2"><span class="rvts32">Added hotkeys for volume up/down</span></li>
 <li class="rvps2"><span class="rvts32">Menu toggling with the Alt key</span></li>
 <li class="rvps2"><span class="rvts32">Print error when opengl/scalers are both enabled</span></li>
 <li class="rvps2"><span class="rvts32">Fixed bug where lua open file gui would default to home directory</span></li>
</ul>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34"><br/></span></p>
<p class="rvps2"><span class="rvts34"></span><span class="rvts6"></span></p>
<p class="rvps4" style="clear: both;"><span class="rvts18">Created with the Personal Edition of HelpNDoc: </span><a class="rvts19" href="https://www.helpauthoringsoftware.com">Benefits of a Help Authoring Tool</a></p>

            </div>
            
            <div id="topic_footer"><div id="topic_footer_content">2020</div></div>
        </div>  <!-- /#topic-content -->
    </article>

    <footer></footer>

  </div>  <!-- /#main -->

  <div class="mask" data-toggle="sm-nav-expanded"></div>
  
  <!-- Modal -->
  <div class="modal fade" id="hndModal" tabindex="-1" role="dialog" aria-labelledby="hndModalLabel">
    <div class="modal-dialog" role="document">
      <div class="modal-content">
        <div class="modal-header">
          <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
          <h4 class="modal-title" id="hndModalLabel"></h4>
        </div>
        <div class="modal-body">
        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-primary modal-btn-close" data-dismiss="modal">Close</button>
        </div>
      </div>
    </div>
  </div>

  <!-- Splitter -->
  <div id="hnd-splitter" style="left: 250px"></div>  

  <!-- Scripts -->
  <script src="vendors/jquery-3.5.1/jquery.min.js"></script>
  <script src="vendors/bootstrap-3.4.1/js/bootstrap.min.js"></script>
  <script src="vendors/bootstrap-3.4.1/js/ie10-viewport-bug-workaround.js"></script>
  <script src="vendors/markjs-8.11.1/jquery.mark.min.js"></script>
  <script src="vendors/uri-1.19.2/uri.min.js"></script>
  <script src="vendors/imageMapResizer-1.0.10/imageMapResizer.min.js"></script>
  <script src="vendors/headroom-0.11.0/headroom.min.js"></script>
  <script src="vendors/jstree-3.3.10/jstree.min.js"></script>  
  <script src="vendors/interactjs-1.9.22/interact.min.js"></script>  

  <!-- HelpNDoc scripts -->
  <script src="js/polyfill.object.min.js"></script>
  <script src="_translations.js"></script>
  <script src="js/hndsd.min.js"></script>
  <script src="js/hndse.min.js"></script>
  <script src="js/app.min.js"></script>

  <!-- Init script -->
  <script>
    $(function() {
      // Create the app
      var app = new Hnd.App();
      // Update translations
      hnd_ut(app);
	  // Instanciate imageMapResizer
	  imageMapResize();
	  // Custom JS
	  
      // Boot the app
      app.Boot();
    });
  </script>



</body>

</html>

